315 research outputs found

    Goal-oriented Data Visualization with Software Project Control Centers

    Full text link
    Many software development organizations still lack support for obtaining intellectual control over their software development processes and for determining the performance of their processes and the quality of the produced products. Systematic support for detecting and reacting to critical project states in order to achieve planned goals is usually missing. One means to institutionalize measurement on the basis of explicit models is the development and establishment of a so-called Software Project Control Center (SPCC) for systematic quality assurance and management support. An SPCC is comparable to a control room, which is a well known term in the mechanical production domain. Its tasks include collecting, in- terpreting, and visualizing measurement data in order to provide context-, purpose-, and role-oriented information for all stakeholders (e.g., project managers, quality assurance manager, developers) during the execution of a software development project. The article will present an overview of SPCC concepts, a concrete instantiation that supports goal-oriented data visualization (G-SPCC approach), and experiences from practical applications.Comment: 11 pages. arXiv admin note: substantial text overlap with arXiv:1401.190

    Implementing Software Project Control Centers: An Architectural View

    Full text link
    Setting up effective and efficient mechanisms for controlling software and system development projects is still challenging in industrial practice. On the one hand, necessary prerequisites such as established development processes, understanding of cause-effect relationships on relevant indicators, and sufficient sustainability of measurement programs are often missing. On the other hand, there are more fundamental methodological deficits related to the controlling process itself and to appropriate tool support. Additional activities that would guarantee the usefulness, completeness, and precision of the result- ing controlling data are widely missing. This article presents a conceptual architecture for so-called Software Project Control Centers (SPCC) that addresses these challenges. The architecture includes mechanisms for getting sufficiently precise and complete data and supporting the information needs of different stakeholders. In addition, an implementation of this architecture, the so-called Specula Project Support Environment, is sketched, and results from evaluating this implementation in industrial settings are presented.Comment: 14 pages. The final publication is available at http://link.springer.com/chapter/10.1007%2F978-3-540-89403-2_2

    Maintaining a Large Process Model Aligned with a Process Standard: An Industrial Example

    Full text link
    An essential characteristic of mature software and system development organizations is the definition and use of explicit process models. For a number of reasons, it can be valuable to produce new process models by tailoring existing process standards (such as the V-Modell XT). Both process models and standards evolve over time in order to integrate improvements or adapt the process models to context changes. An important challenge for a process engineering team is to keep tailored process models aligned over time with the standards originally used to produce them. This article presents an approach that supports the alignment of process standards evolving in parallel to derived process models, using an actual industrial example to illustrate the problems and potential solutions. We present and discuss the results of a quantitative analysis done to determine whether a strongly tailored model can still be aligned with its parent standard and to assess the potential cost of such an alignment. We close the paper with conclusions and outlook.Comment: 12 pages. The final publication is available at http://link.springer.com/chapter/10.1007%2F978-3-540-75381-0_

    Process Evolution Supported by Rationale: An Empirical Investigation of Process Changes

    Full text link
    Evolving a software process model without a retrospective and, in consequence, without an understanding of the process evolution, can lead to severe problems for the software development organization, e.g., inefficient performance as a consequence of the arbitrary introduction of changes or difficulty in demonstrating compliance to a given standard. Capturing information on the rationale behind changes can provide a means for better understanding process evolution. This article presents the results of an exploratory study with the goal of understanding the nature of process changes in a given context. It presents the most important issues that motivated process engineers changing important aerospace software process standards during an industrial project. The study is part of research work intended to incrementally define a systematic mechanism for process evolution supported by rationale information.Comment: 8 pages. The final publication is available at http://link.springer.com/chapter/10.1007%2F11754305_3

    Process Model Difference Analysis for Supporting Process Evolution

    Full text link
    Software development processes are subject to variations in time and space, variations that can originate from learning effects, differences in application domains, or a number of other causes. Identifying and analyzing such differences is crucial for a variety of process activities, like defining and evolving process standards, or analyzing the compliance of process models to existing standards, among others. In this paper, we show why appropriately identifying, describing, and visualizing differences between process models in order to support such activities is a highly challenging task. We present scenarios that motivate the need for process model difference analysis, and describe the conceptual and technical challenges arising from them. In addition, we sketch an initial tool-based approach implementing difference analysis, and contrast it with similar existing approaches. The results from this paper constitute the requirements for our ongoing development effort, whose objectives we also describe briefly.Comment: 12 pages. The final publication is available at http://link.springer.com/chapter/10.1007%2F11908562_1

    A Decision Model for Supporting Task Allocation Processes in Global Software Development

    Full text link
    Today, software-intensive systems are increasingly being developed in a globally distributed way. However, besides its benefit, global development also bears a set of risks and problems. One critical factor for successful project management of distributed software development is the allocation of tasks to sites, as this is assumed to have a major influence on the benefits and risks. We introduce a model that aims at improving management processes in globally distributed projects by giving decision support for task allocation that systematically regards multiple criteria. The criteria and causal relationships were identified in a literature study and refined in a qualitative interview study. The model uses existing approaches from distributed systems and statistical modeling. The article gives an overview of the problem and related work, introduces the empirical and theoretical foundations of the model, and shows the use of the model in an example scenario.Comment: 15 pages. The final publication is available at http://link.springer.com/chapter/10.1007%2F978-3-642-02152-7_2

    Liouville property and non-negative Ollivier curvature on graphs

    Full text link
    For graphs with non-negative Ollivier curvature, we prove the Liouville property, i.e., every bounded harmonic function is constant. Moreover, we improve Ollivier's results on concentration of the measure under positive Ollivier curvature

    A Survey on the State of the Practice in Distributed Software Development: Criteria for Task Allocation

    Full text link
    The allocation of tasks can be seen as a success-critical management activity in distributed development projects. However, such task allocation is still one of the major challenges in global software development due to an insufficient understanding of the criteria that influence task allocation decisions. This article presents a qualitative study aimed at identifying and understanding such criteria that are used in practice. Based on interviews with managers from selected software development organizations, criteria currently applied in industry are identified. One important result is, for instance, that the sourcing strategy and the type of software to be developed have a significant effect on the applied criteria. The article presents the goals, design, and results of the study as well as an overview of related and future work.Comment: 9 pages, 1 figure. The final publication is available at http://ieeexplore.ieee.org. Link: http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=519691

    Towards a Multi-criteria Development Distribution Model: An Analysis of Existing Task Distribution Approaches

    Full text link
    Distributing development tasks in the context of global software development bears both many risks and many opportunities. Nowadays, distributed development is often driven by only a few factors or even just a single factor such as workforce costs. Risks and other relevant factors such as workforce capabilities, the innovation potential of different regions, or cultural factors are often not recognized sufficiently. This could be improved by using empirically-based multi-criteria distribution models. Currently, there is a lack of such decision models for distributing software development work. This article focuses on mechanisms for such decision support. First, requirements for a distribution model are formulated based on needs identified from practice. Then, distribution models from different domains are surveyed, compared, and analyzed in terms of suitability. Finally, research questions and directions for future work are given.Comment: 10 pages. The final publication is available at http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=463865

    Observation-based Development of Software Process Baselines: An Experience Report

    Full text link
    The creation and deployment of software development processes for new domains (such as wireless Internet services) is a challenging task due to the lack of knowledge about adequate engineering techniques and their effects. In addition, time-to-market pressure prevents applying long-lasting maturation of processes. Nevertheless, developing software of a predetermined quality in a predictable fashion can only be achieved with systematic development processes and the use of engineering principles. A descriptive approach promises to quickly create initial valuable process models and quantitative baselines that can be seen as starting points for continuous improvement activities. This paper describes the creation of software development processes for the development of wireless Internet services based on the observation of pilot projects that were performed at distributed development sites. Different techniques and tools such as descriptive process modeling, process documentation generation, goal-oriented measurement, and capturing qualitative experience were combined to gain process baselines. Results show that the observation-based approach helped to quickly come up with stable context-oriented development processes and get a better understanding of their effects with respect to quantitative and qualitative means.Comment: 7 pages. arXiv admin note: substantial text overlap with arXiv:1403.251
    corecore